class Solution376_2 {
    public int wiggleMaxLength(int[] nums) {
        int len = nums.length;
        if (len < 2)
            return len;
        int max = 1;
        int max2 = 1 ;
        // 先找比他大的

            boolean flg = true;
            for (int i = 1; i < len - 1; i++) {
                if (flg) {
                    if (nums[i] > nums[i + 1]) {
                        max++;
                        flg = false;
                    }
                } else {
                    if (nums[i] < nums[i + 1]) {
                        max++;
                        flg = true;
                    }
                }
            }


            flg = false;
            for (int i = 1; i < len - 1; i++) {
                if (flg) {
                    if (nums[i] > nums[i + 1]) {
                        max2++;
                        flg = false;
                    }
                } else {
                    if (nums[i] < nums[i + 1]) {
                        max2++;
                        flg = true;
                    }
                }
            }
        
        return max>max2?max:max2;
    }
}